#define JPEG_INTERNALS
#include "jinclude.h"
#include "jpeglib.h"
#include "jmemsys.h"		/* import the system-dependent declarations */

#ifndef HAVE_STDLIB_H		/* <stdlib.h> should declare malloc(),free() */
extern void * malloc JPP( ( size_t size ) );
extern void free JPP( ( void *ptr ) );
#endif

void * jpeg_get_small( j_common_ptr cinfo, size_t sizeofobject ) {
  return ( void * ) malloc( sizeofobject );
}

void jpeg_free_small( j_common_ptr cinfo, void * object, size_t sizeofobject ) {
  free( object );
}


void FAR * jpeg_get_large( j_common_ptr cinfo, size_t sizeofobject ) {
  return ( void FAR * ) malloc( sizeofobject );
}

void jpeg_free_large( j_common_ptr cinfo, void FAR * object, size_t sizeofobject ) {
  free( object );
}


long jpeg_mem_available( j_common_ptr cinfo, long min_bytes_needed,
                         long max_bytes_needed, long already_allocated ) {
  return max_bytes_needed;
}

void jpeg_open_backing_store( j_common_ptr cinfo, backing_store_ptr info,
                              long total_bytes_needed ) {
  ERREXIT( cinfo, JERR_NO_BACKING_STORE );
}

long jpeg_mem_init( j_common_ptr cinfo ) {
  return 0;			/* just set max_memory_to_use to 0 */
}

void jpeg_mem_term( j_common_ptr cinfo ) {
}
